package com.naiterui.ehp.bs.cms.modules.user.mapper;

import org.apache.ibatis.annotations.Param;

import com.baomidou.dynamic.datasource.annotation.DS;
import com.baomidou.mybatisplus.core.conditions.Wrapper;
import com.baomidou.mybatisplus.core.mapper.BaseMapper;
import com.baomidou.mybatisplus.core.metadata.IPage;
import com.baomidou.mybatisplus.extension.plugins.pagination.Page;
import com.naiterui.ehp.bs.cms.common.constants.DsName;
import com.naiterui.ehp.bs.cms.modules.user.entity.Patient;
import com.naiterui.ehp.bs.cms.modules.user.vo.DoctorBaseInfoVO;
import com.naiterui.ehp.bs.cms.modules.user.vo.PatientBaseInfoVO;
import com.naiterui.ehp.bs.cms.modules.user.vo.PatientPageVO;

@DS(DsName.EHP)
public interface PatientMapper extends BaseMapper<Patient> {

    PatientBaseInfoVO get(@Param("patientId") Long patientId);

    Page<PatientPageVO> getPage(@Param("page") IPage<DoctorBaseInfoVO> page, @Param("ew") Wrapper<PatientPageVO> entityWrapper);

    PatientBaseInfoVO getPatientBaseInfo(@Param("patientId") Long patientId);
}
